EclipseLink is an object-persistence and object-transformation framework that provides development tools and run-time capabilities which can reduce development and maintenance efforts, and increase enterprise application functionality. An implementation of the Java Persistence API (JPA) framework is provided by EclipseLink, which enables java classes and objects to be stored in data sources, allowing information to be used across sessions. EclipseLink also provides an implementation of the Java Architecture for XML Binding (JAXB) framework, which enables java classes and objects to be transformed to/from Extensible Markup Language (XML) nodes. Using EclipseLink, software applications can be built which store persistent object-oriented data in a relational database; and can be used to transform object-oriented data into either relational data or Extensible Markup Language (XML) elements.
Software application development in EclipseLink can be divided between an application provider, who provides the base application, and an application user, who uses the base application and/or tailors it further to meet their needs. Typically, the application provider develops the bulk of the application and the application user can make certain types of modifications to that application. Such division of development is associated with different skills possessed by each actor. For example, the application provider may have stronger Java development and database development skills, while the application user has specialized knowledge of their own particular needs and how they would like to tailor or extend the application to meet those needs. Typically the application user does not possess the same degree of Java and database skills as the application provider.